Query Parameters এর ব্যবহার

Java Technologies - অ্যাপাচি এইচটিটিপি ক্লায়েন্ট (Apache HTTP Client) HTTP Headers এবং Parameters হ্যান্ডেল করা |
129
129

অ্যাপাচি HTTP ক্লায়েন্ট (Apache HTTP Client) ব্যবহার করে Query Parameters সংযোজন করা একটি সাধারণ কাজ, বিশেষ করে যখন API-তে GET অনুরোধ পাঠানো হয়। Query parameters URL-এর অংশ হিসেবে থাকে এবং সার্ভারে নির্দিষ্ট ডেটা বা ফিল্টারিং সংক্রান্ত অনুরোধ পাঠানোর জন্য ব্যবহৃত হয়।

যেমন, একটি URL-এর মধ্যে ?key1=value1&key2=value2 এইরকম শর্তে প্রেরিত তথ্য সার্ভারে পৌঁছায়।

Query Parameters এর ব্যবহার

Apache HTTP Client-এ HttpGet এর সাথে Query Parameters যুক্ত করতে URL তৈরির সময় এই পদ্ধতি ব্যবহার করা হয়।

কোড উদাহরণ: Query Parameters এর সাথে GET অনুরোধ

import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import java.net.URI;
import java.net.http.URIBuilder;

public class ApacheHttpClientWithQueryParams {
    public static void main(String[] args) {
        // HttpClient তৈরি করুন
        CloseableHttpClient httpClient = HttpClients.createDefault();

        try {
            // URIBuilder ব্যবহার করে URL এবং Query Parameters তৈরি করা
            URI uri = new URIBuilder("https://jsonplaceholder.typicode.com/posts")
                    .addParameter("userId", "1")
                    .addParameter("id", "2")
                    .build();

            // HttpGet তৈরি করুন
            HttpGet httpGet = new HttpGet(uri);

            System.out.println("Executing request: " + httpGet.getRequestLine());

            // অনুরোধ পাঠিয়ে প্রতিক্রিয়া সংগ্রহ করুন
            CloseableHttpResponse response = httpClient.execute(httpGet);

            try {
                // প্রতিক্রিয়া থেকে স্ট্যাটাস কোড পান
                int statusCode = response.getStatusLine().getStatusCode();
                System.out.println("Response Status Code: " + statusCode);

                // HttpEntity পান এবং ডেটা পড়ুন
                HttpEntity entity = response.getEntity();
                if (entity != null) {
                    // কনটেন্ট স্ট্রিং আকারে পড়ুন
                    String responseBody = EntityUtils.toString(entity);
                    System.out.println("Response Content: " + responseBody);
                }
            } finally {
                // প্রতিক্রিয়া বন্ধ করুন
                response.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                // HttpClient বন্ধ করুন
                httpClient.close();
            } catch (Exception ex) {
                ex.printStackTrace();
            }
        }
    }
}

কোড ব্যাখ্যা

  1. Query Parameters তৈরি করা

    URI uri = new URIBuilder("https://jsonplaceholder.typicode.com/posts")
            .addParameter("userId", "1")
            .addParameter("id", "2")
            .build();
    
    • URIBuilder ব্যবহার করে URL এর সাথে Query Parameters যুক্ত করা হয়েছে। এখানে userId=1 এবং id=2 দুটি প্যারামিটার যুক্ত করা হয়েছে।
  2. HttpGet তৈরি করা

    HttpGet httpGet = new HttpGet(uri);
    
    • HttpGet অবজেক্টে তৈরি করা URL (যার মধ্যে Query Parameters অন্তর্ভুক্ত) পাস করা হয়েছে।
  3. HTTP অনুরোধ পাঠানো এবং প্রতিক্রিয়া প্রাপ্তি
    • HTTP GET অনুরোধ সার্ভারে পাঠানো হয়েছে এবং প্রতিক্রিয়া (HttpResponse) গ্রহণ করা হয়েছে।
    • response.getEntity() ব্যবহার করে HTTP প্রতিক্রিয়া থেকে ডেটা নেওয়া হয়েছে এবং তা EntityUtils.toString(entity) এর মাধ্যমে স্ট্রিং আকারে রূপান্তরিত করা হয়েছে।
  4. প্রতিক্রিয়া পর্যালোচনা
    • সার্ভারের স্ট্যাটাস কোড এবং প্রতিক্রিয়া কন্টেন্ট পর্যালোচনা করা হয়েছে।

Query Parameters সম্পর্কে কিছু গুরুত্বপূর্ণ نکতাস:

  1. প্যারামিটার যুক্ত করার নিয়ম
    • URL এর শেষে ? চিহ্নের মাধ্যমে প্রথম প্যারামিটার শুরু হয় এবং subsequent প্যারামিটার গুলি & দ্বারা আলাদা হয়।
    • উদাহরণ: https://example.com/api?key1=value1&key2=value2
  2. প্যারামিটার নাম এবং মান
    • Query Parameters সাধারণত কী-মূল্য জোড়া (key-value pair) আকারে থাকে।
    • key1 হল প্যারামিটারের নাম এবং value1 তার মান।
  3. URL এ নিরাপত্তা এবং ইনকোডিং
    • Special characters, যেমন স্পেস বা &, %, ? ইত্যাদি URL এ সংযোজনের সময় এনকোড করা প্রয়োজন।
    • URLEncoder.encode() পদ্ধতি ব্যবহার করে প্যারামিটারগুলির মান নিরাপদে এনকোড করা যেতে পারে।

সারাংশ

Query Parameters HTTP GET অনুরোধের মাধ্যমে সার্ভারে নির্দিষ্ট ডেটা প্রেরণের জন্য ব্যবহৃত হয়। Apache HTTP Client-এ HttpGet এবং URIBuilder ব্যবহার করে সহজেই URL-এ Query Parameters যোগ করা যায়। এই পদ্ধতি API কলের সময় বিভিন্ন ধরনের ফিল্টারিং বা ডেটা অনুসন্ধান কার্যকর করতে সাহায্য করে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion